package com.rongke.model;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.rongke.utils.DateJsonDeserializer;
import com.rongke.utils.DateJsonSerializer;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @AfterSaleOrder
 * @售后定订单(after_sale_order)
 * @version : Ver 1.0
 */
@TableName("after_sale_order")
public class AfterSaleOrder implements Serializable {
	@TableField(exist = false)
	private static final long serialVersionUID = 1L;

	/**
	 * @备注:售后订单id
	 * @字段:id BIGINT(19)
	 */
	@TableId(type = IdType.AUTO)
	private java.lang.Long id;

	/**
	 * @备注:售后订单类型(退款、退货退款)
	 * @字段:type VARCHAR(11)
	 */
	private java.lang.Integer type;

	/**
	 * @备注:退款金额
	 * @字段:refund_money DECIMAL(11)
	 */
	private java.math.BigDecimal refundMoney;

	/**
	 * @备注:退款原因
	 * @字段:refund_reason TEXT(65535)
	 */
	private java.lang.String refundReason;

	/**
	 * @备注:退款说明
	 * @字段:refund_message TEXT(65535)
	 */
	private java.lang.String refundMessage;

	/**
	 * @备注:凭证图片(多图以逗号分隔)
	 * @字段:picture_url VARCHAR(33)
	 */
	private java.lang.String pictureUrl;

	private java.lang.Long orderId;
	/**
	 * @备注:订单id
	 * @字段:order_id BIGINT(19)
	 */
   @TableField(exist = false)
	private Orders order;

	/**
	 * @备注:状态(退款中、取消退款等)
	 * @字段:status VARCHAR(11)
	 */
	private java.lang.Integer status;

	/**
	 * @备注:退款编号
	 * @字段:refund_number VARCHAR(20)
	 */
	private java.lang.String refundNumber;
	private java.lang.String outRefundNo;


	private java.lang.Long muserId;

   @TableField(exist = false)
    private Muser muser;
	/**
	 * @备注:申请时间
	 * @字段:gmt_datetime DATETIME(19)
	 */
	@JsonSerialize(using=DateJsonSerializer.class)
	@JsonDeserialize(using=DateJsonDeserializer.class)
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss" )
	private java.util.Date gmtDatetime ;

	/**
	 * @备注:更新时间
	 * @字段:upt_datetime DATETIME(19)
	 */
	@JsonSerialize(using=DateJsonSerializer.class)
	@JsonDeserialize(using=DateJsonDeserializer.class)
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss" )
	private java.util.Date uptDatetime ;




	public AfterSaleOrder(){
	}

	public AfterSaleOrder(
		java.lang.Long id
	){
		this.id = id;
	}

	public Long getMuserId() {
		return muserId;
	}

	public void setMuserId(Long muserId) {
		this.muserId = muserId;
	}

	public void setId(java.lang.Long id) {
		this.id = id;
	}

	public java.lang.Long getId() {
		return this.id;
	}


	public Long getOrderId() {
		return orderId;
	}

	public void setOrderId(Long orderId) {
		this.orderId = orderId;
	}

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public void setRefundMoney(java.math.BigDecimal refundMoney) {
		this.refundMoney = refundMoney;
	}

	public java.math.BigDecimal getRefundMoney() {
		return this.refundMoney;
	}



	public String getOutRefundNo() {
		return outRefundNo;
	}

	public void setOutRefundNo(String outRefundNo) {
		this.outRefundNo = outRefundNo;
	}

	public Muser getMuser() {
		return muser;
	}

	public void setMuser(Muser muser) {
		this.muser = muser;
	}

	public void setRefundReason(java.lang.String refundReason) {
		this.refundReason = refundReason;
	}

	public java.lang.String getRefundReason() {
		return this.refundReason;
	}


	public void setRefundMessage(java.lang.String refundMessage) {
		this.refundMessage = refundMessage;
	}

	public java.lang.String getRefundMessage() {
		return this.refundMessage;
	}


	public void setPictureUrl(java.lang.String pictureUrl) {
		this.pictureUrl = pictureUrl;
	}

	public java.lang.String getPictureUrl() {
		return this.pictureUrl;
	}


	public void setOrder(Orders order) {
		this.order = order;
	}

	public Orders getOrder() {
		return this.order;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public void setRefundNumber(java.lang.String refundNumber) {
		this.refundNumber = refundNumber;
	}

	public java.lang.String getRefundNumber() {
		return this.refundNumber;
	}


	public void setGmtDatetime(java.util.Date gmtDatetime) {
		this.gmtDatetime = gmtDatetime;
	}

	public java.util.Date getGmtDatetime() {
		return this.gmtDatetime;
	}


	public void setUptDatetime(java.util.Date uptDatetime) {
		this.uptDatetime = uptDatetime;
	}

	public java.util.Date getUptDatetime() {
		return this.uptDatetime;
	}

}
